package cn.itcast.zt.java8.model.decorator.demo2;

/**
 * 具体的装饰器类AProductServiceDecorate
 * 主要负责处理“导师证书”这个业务场景下，A产品相关的导入逻辑，并且标记了自定义注解Decorate，
 * 表示该类是装饰器类。主要负责对A产品证书导入之前逻辑的增强，我们这里称之为“装饰”
 *
 * 可以有其他装饰类BProductServiceDecorate、CProductServiceDecorate对功能进行扩展增强或处理各自业务逻辑分离
 * @author zhangtian105
 * @date 2023/4/20
 * @apiNote
 */
@Decorate(scene = "COMPUTE", type = "AProduct")
public class AProductServiceDecorate extends AbstractHandler<String, Integer> {
    public AProductServiceDecorate(BaseHandler<String, Integer> baseHandler) {
        super(baseHandler);
    }

    @Override
    public Integer handler(String params) {
        System.out.println("处理A产品的业务逻辑扩展~~~" + params);
        return baseHandler.handler(params);
    }
}
